#pragma once

#include "SimpleVector2D.h"
#include "LinkedList.h"
#include "LinkedList.cpp"

using namespace SimpleVector2D;

struct PhysicObject{
	Vector2D m_position;
	Vector2D m_velocity;

	LinkedList<PhysicObject **> m_PhysicObjectList;

	bool Collide(){
		bool t_collide = false;
		do{
			int t_size = m_PhysicObjectList.Get_Size();
			if(t_size > 0){
				t_collide = true;
				break;
			}
		}while(false);
		return t_collide;
	};
	bool Contact(const PhysicObject &a_PhysicObject){
	};
	void Release(){
		m_PhysicObjectList.ClearPtr();
	};
};

class PhysicRigidBody{
public:
	PhysicObject *m_PhysicObject;

	PhysicRigidBody(){
		m_PhysicObject = 0;
	};
	PhysicRigidBody(PhysicObject *a_PhysicObject){
		m_PhysicObject = a_PhysicObject;
	};
	~PhysicRigidBody(){}

	void Release(){
		m_PhysicObject = 0;
	};
};